#include "cute.h"
#include "ide_listener.h"
#include "cute_runner.h"

#include "EngineTests.h"

EngineTests testEngine;

void runSuite()
{
	cute::suite s;

	//TODO add your test here
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, create_engine ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, get_args ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_00 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_01 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_02 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_03 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_04 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_05 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_06 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_07 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_08 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_09 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_10 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_11 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_12 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_13 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_14 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_15 ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_options_16 ));

	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_log ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_register_gfx ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_create_gfx ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_load_plugins ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, startup_plugins ));

	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, run_idle ));

	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_plugins ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_unload_plugins ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_destroy_gfx ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_unregister_gfx ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_log ));
	s.push_back(CUTE_MEMFUN( testEngine, EngineTests, shutdown_options ));

	cute::ide_listener lis;
	cute::makeRunner(lis)(s, "AbraxasGE_Suite");
}

int main()
{
    runSuite();
}



